#ifndef ACCOUNT_H
#define ACCOUNT_H

#include <string>

#include <../pjsipwrapper/pjsipwrapper.h>


class Account : public PjApiUaAccount
{
public:
    Account();

    Account(std::string username, std::string password);

    Account(Account & account);

    Account & operator=(Account &account);

    //Account& operator=(Account & account);

    ~Account();

    std::string getAccountDescription()const
    {
        return m_description;
    }

    void setAccountDescription(std::string desc)
    {
        m_description = desc;
    }

private:

    void copy(Account& account);

    std::string m_description;

   // std::string m_phone;

   // std::string m_address;
};


/**
 * Here we may not need account manager

class AccountManager
{
public:

    static AccountManager* getInstance()
    {
        if(m_manager == NULL)
        {
            m_manager = new AccountManager();
        }
        return m_manager;
    }

    Account *getAccount() const
    {
        return m_account;
    }

    void registerAccount(Account *account)
    {
        m_account = account;
    }

    AccountManager()
    {
        m_account = NULL;
    }

    ~AccountManager() {}

private:

    Account *m_account;

    AccountManager *m_manager;
}

**/


#endif
